/*
 * 0413. 反转整数
 * 将一个整数中的数字进行颠倒，当颠倒后的整数溢出时，返回 0 (标记为 32 位整数)。
 * https://www.lintcode.com/problem/reverse-integer/description
 * 
 * 样例
 * 给定 x = 123，返回 321
 * 给定 x = -123，返回 -321
 * 
 * 2018.06.25 @jeyming
 */
package reverse_integer_0413;

public class Reverse_integer_0413 {
    /**
     * @param n: the integer to be reversed
     * @return: the reversed integer
     */
    public int reverseInteger(int n) {
        // write your code here
    	int cnt = 0;
    	int result = 0;
    	boolean judge = true;
    	if(n < 0) {
    		judge = false;
    		n = -n;
    	}
    	while(n > 0) {
    		result = result * 10 + n % 10;
    		n /= 10;
    		++cnt;
    	}
    	if(cnt >= 10) {
    		return 0;
    	} else if(!judge) {
    		return -result;
    	} else {
    		return result;
    	}
    }

	public static void main(String[] args) {
		// TODO Auto-generated method stub

	}

}
